package com.anyou.mall.use.service;

import java.util.List;
import com.anyou.mall.use.domain.UserNotice;
import com.anyou.mall.use.param.NoticeParam;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 用户通知Service接口
 *
 * @author gaochaohao
 * @date 2022-04-07
 */
public interface IUserNoticeService extends IService<UserNotice>
{
    /**
     * 查询用户通知
     *
     * @param noticeId 用户通知主键
     * @return 用户通知
     */
    public UserNotice selectUserNoticeByNoticeId(Long noticeId);

    /**
     * 查询用户通知列表
     *
     * @param userNotice 用户通知
     * @return 用户通知集合
     */
    public List<UserNotice> selectUserNoticeList(UserNotice userNotice);

    /**
     * 新增用户通知
     *
     * @param userNotice 用户通知
     * @return 结果
     */
    public int insertUserNotice(UserNotice userNotice);

    /**
     * 修改用户通知
     *
     * @param userNotice 用户通知
     * @return 结果
     */
    public int updateUserNotice(UserNotice userNotice);

    /**
     * 批量删除用户通知
     *
     * @param noticeIds 需要删除的用户通知主键集合
     * @return 结果
     */
    public int deleteUserNoticeByNoticeIds(Long[] noticeIds);

    /**
     * 删除用户通知信息
     *
     * @param noticeId 用户通知主键
     * @return 结果
     */
    public int deleteUserNoticeByNoticeId(Long noticeId);

    /**
     * 删除用户消息通知表中的信息
     * @param platformNoticeId
     * @return
     */
    boolean deleteDataByPlatformNoticeId(Long platformNoticeId);

    /**
     * 后台管理消息列表
     * @return
     */
    List<UserNotice> getAdminNoticeList(NoticeParam param);
}
